# coding=utf8
# 全世界最帅的帅哥
from flask import g
from comment.modules.user import User


# 自定义一个登录拦截的装饰器
def login_required(func):
    def wrapper(*args, **kwargs):
        # 表示已经登录过
        if g.user_id is not None:
            return func(*args, **kwargs)
        else:
            return {"message": "用户未登录，请先登录后继续访问"}, 401

    return wrapper


# 定义一个管理员登录拦截的装饰器
def root_login_required(func):
    def wrapper(*args, **kwargs):
        # 表示已经登录
        if g.user_id is not None:
            user = User.query.filter(User.id == g.user_id).first()
            if user.role == 0:
                return {"message": "当前页面需要管理员才能访问"}
            else:
                return func(*args, **kwargs)
        else:
            return {"message": "当前页面需要登录才能访问"}

    return wrapper
